<!DOCTYPE html>
<html>
    <head>
        <meta charset='utf-8'>
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <script src="../lib/esl.js"></script>
        <script src="../lib/config.js"></script>
        <script src="../lib/jquery.min.js"></script>
    </head>
    <body>
        <style>
            html, body, #main {
                width: 100%;
                height: 100%;
                margin: 0;
                padding: 0;
            }
        </style>
        <div id="main"></div>
        <script>

            require([
                'echarts',
                'ecStat'
            ], function (echarts, ecStat) {

                echarts.registerTransform(ecStat.transform.regression);

                var chart = echarts.init(document.getElementById('main'));

                var data = [
                    [96.24, 11.35],
                    [33.09, 85.11],
                    [57.60, 36.61],
                    [36.77, 27.26],
                    [20.10, 6.72],
                    [45.53, 36.37],
                    [110.07, 80.13],
                    [72.05, 20.88],
                    [39.82, 37.15],
                    [48.05, 70.50],
                    [0.85, 2.57],
                    [51.66, 63.70],
                    [61.07, 127.13],
                    [64.54, 33.59],
                    [35.50, 25.01],
                    [226.55, 664.02],
                    [188.60, 175.31],
                    [81.31, 108.68]
                ];

                var option = {
                    dataset: [{
                        source: [
                            [96.24, 11.35],
                            [33.09, 85.11],
                            [57.60, 36.61],
                            [36.77, 27.26],
                            [20.10, 6.72],
                            [45.53, 36.37],
                            [110.07, 80.13],
                            [72.05, 20.88],
                            [39.82, 37.15],
                            [48.05, 70.50],
                            [0.85, 2.57],
                            [51.66, 63.70],
                            [61.07, 127.13],
                            [64.54, 33.59],
                            [35.50, 25.01],
                            [226.55, 664.02],
                            [188.60, 175.31],
                            [81.31, 108.68]
                        ]
                    }, {
                        transform: {
                            type: 'ecStat:regression',
                            config: { method: 'polynomial', order: 3 }
                        }
                    }],
                    tooltip: {
                        trigger: 'axis',
                        axisPointer: {
                            type: 'cross'
                        }
                    },
                    xAxis: {
                        splitLine: {
                            lineStyle: {
                                type: 'dashed'
                            }
                        },
                        splitNumber: 20
                    },
                    yAxis: {
                        min: -40,
                        splitLine: {
                            lineStyle: {
                                type: 'dashed'
                            }
                        }
                    },
                    series: [{
                        name: 'scatter',
                        type: 'scatter'
                     }, {
                        name: 'line',
                        type: 'line',
                        smooth: true,
                        datasetIndex: 1,
                        symbolSize: 0.1,
                        symbol: 'circle',
                        label: { show: true, fontSize: 16 },
                        labelLayout: { dx: -20 },
                        encode: { label: 2, tooltip: 1 }
                    }]
                };

                chart.setOption(option);

            });

        </script>
    </body>
</html>